<?php
/**
 * Pàgina que ens proporciona seguretat a l'aplicació, comprova que l'usuari sigui un
 * usuari autenticat i després comprova els permisos dels que gaudeix aquest usuari.
 *
 * @copyright 2009 - Equip de Desenvolupament de ASI 2
 * @link http://www.iescopernic.com
 * @version 1.0
 * @license GNU/GPL-http://www.gnu.org/copyleft/gpl.html
 * @package CreditSintesis
 * @subpackage includes
 * @author ASI 2
 */
?>
<?php
//obrim sessio
session_start();

/**
 * Arxiu que gestiona la connexió amb la base de dades
 * @see conector.php
 */
include_once 'conector.php';

//si no tenim la variable de sessio user amb un valor vol dir que no hi ha sessio valida
if (empty($_SESSION['user'])) {
    header("location:../index.php?seccio=principallogin");
//si tenim sessió valida. . .
}else{
    //variable que ens marca el moment d'accés a la pàgina
    $entrada = time();

    //variable que enmagatzema la durada màxima de la sessió
    $duradamaxima = $_SESSION['durada'];
    
    //durada en segons de sessió
    $tempsSessio = ($entrada - $_SESSION['temps']);

    //comprovem que no haguem excedit el temps de sessió 900 segons 15 minuts
    if ($tempsSessio > $duradamaxima){
        //si trobem sortir.php sortim
        if (file_exists('sortir.php')){
            header("sortir.php");
            exit();
        //si no trobem sortir.php, es que estem en un popoup i mostrem error
        }else{
            echo '<html>';
            echo '<head>';
            echo '<title>Seguretat</title>';
            echo '<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />';
            echo '</head>';
            echo '<body>';
            echo '<div id="omplir"';
            echo '<br>';
            echo '<center><strong><font color="red"> Temps de sessió esgotat!!!</font></strong></center>';
            echo '</div>';
            echo '</body>';
            echo '</html>';
            exit();
        }
     //si no superem el temps de sessió actuetizem la variable al temps actual
    }else{
        //refresquem el temps de sessió
        $_SESSION['temps'] = time();
    }

    
    //objecte que que gestiona la conexio a la base de dades
    $conec = new conector();

    //variable que recull el valor delusuari autenticat
    $nomUsuari = $_SESSION['user'];    

    //variable que controlara el temps que porta la sessió oberta


    //algunes pàgines necessitem declararla fora per temes de ajax
    if (!isset($nomSeccio)){
        $nomSeccio = $_SERVER['PHP_SELF'];
    }

    //extreiem el nom del arxiu de la ruta
    $nomSeccio = pathinfo($nomSeccio);  
     
    $consulta = "SELECT COUNT(*) FROM perm_users WHERE ((IDuser = '".$nomUsuari."') OR (IDuser =(SELECT iduser from usuaris where user='".$nomUsuari."'))) AND
                  idAccio = (SELECT idAccio FROM permisos WHERE script = '".$nomSeccio['basename']."')";
				  
    $resultat = $conec ->consultar($consulta);

    $conec ->tancar();

    $res = mysql_fetch_array($resultat);    

    //si no te el permis mostrem error
    if($res[0] == 0){

        echo '<html>';
        echo '<head>';
        echo '<title>Seguretat</title>';
        echo '<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />';
        if (file_exists('../scrips/funcions.js')){
            echo '<script type="text/javascript" src="../scrips/funcions.js"></script>';
        }else{
            echo '<script type="text/javascript" src="scrips/funcions.js"></script>';
        }        
        echo '</head>';
        echo '<body>';
        echo '<div id="omplir"';
        echo '<br>';
        echo '<script> window.onload = function() { errorperm() };</script>';
        echo '</div>';
        echo '</body>';
        echo '</html>';
        exit();        
    }
}
?>